package com.ruoyi.app.vo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.ruoyi.oms.entity.OrderItem;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;

@Data
@ApiModel("订单VO")
public class OrderVO {

    @ApiModelProperty("id")
    private Long id;
    /**
     * 订单编号
     */
    @ApiModelProperty("")
    private String orderSn;

    /**
     * 运输状态：0->创建订单；1->待取货；2->待收货；3->待支付；4->待评价；5->已完成
     */
    @ApiModelProperty("")
    private Integer transportStatus;

    /**
     * 安装状态：0->创建订单；1-待取货,2-待安装,3-已安装,	4-待付款,5-待评价,6-已完成
     */
    @ApiModelProperty("")
    private Integer installStatus;

    /**
     * 类型(1-运输,2-安装,3-运输及安装)
     */
    @ApiModelProperty("")
    private String type;

    /**
     * 用户id
     */
    @ApiModelProperty("")
    private Long memberId;

    /**
     * 用户地址id
     */
    @ApiModelProperty("")
    private Long memberAddressId;
    /**
     * 收货人
     */
    @ApiModelProperty("")
    private String name;

    /**
     * 省
     */
    @ApiModelProperty("")
    private String province;

    /**
     * 市
     */
    @ApiModelProperty("")
    private String city;

    /**
     * 区
     */
    @ApiModelProperty("")
    private String area;

    /**
     * 详细地址
     */
    @ApiModelProperty("")
    private String address;

    /**
     * 联系电话
     */
    @ApiModelProperty("")
    private String mobile;

    /**
     * 商家id
     */
    @ApiModelProperty("")
    private Long shopId;

    /**
     * 订单金额
     */
    @ApiModelProperty("")
    private BigDecimal orderAmount;

    /**
     * 优惠金额
     */
    @ApiModelProperty("")
    private BigDecimal discountAmount;

    /**
     * 支付时间
     */
    @ApiModelProperty("")
    private LocalDateTime payTime;

    /**
     * 发货时间
     */
    @ApiModelProperty("")
    private LocalDateTime sendTime;

    /**
     * 收货时间
     */
    @ApiModelProperty("")
    private LocalDateTime deliveryTime;

    /**
     * 完成时间
     */
    @ApiModelProperty("")
    private LocalDateTime finishTime;

    private List<OrderItem> items;
}
